#include<iostream>
#include<algorithm>
#include<stack>

using namespace std;

int main() {
    string str;
    int temp = 0;   // 用于存储当前读取的整数
    stack<int> st;
    cin >> str;
        // 遍历输入的字符串
    for (int i = 0; i < str.length(); i++) {
        // 如果当前字符是数字，则将其转换为整数并累加到 temp 中
        if(str[i] >= '0' && str[i] <= '9') {
            temp = temp * 10 + str[i] - '0';
        // 如果当前字符是小数点，则将 temp 压入栈中，并重置 temp
        } else if(str[i] == '.') {
            st.push(temp);
            temp = 0;
        // 如果当前字符是加号，则从栈中弹出两个元素，计算它们的和，并将结果压入栈中
        } else if(str[i] == '@') {
                cout << st.top()<<endl;
                break;
        } else {
            // 从栈中弹出两个元素
            int a = st.top();
            st.pop();
            int b = st.top();
            st.pop();
            // 根据当前字符执行相应的运算，并将结果压入栈中
            switch (str[i]) { 
            case '+':
                st.push(a + b);
                break;
            case '-':
                st.push(b - a);
                break;
            case '*':
                st.push(a * b);
                break;
            case '/':
                // 注意：这里需要判断除数是否为0
                if(a == 0) {
                    cout << "Error: Division by zero!" << endl;
                    return 0;
                }
                st.push(b / a);
                break;
            default:
                break;
            }
        }
    }
    return 0;
}
